[Oracle]sqlplus 启动参数说明 您所在的位置:网站首页 sqlplus 按列显示 [Oracle]sqlplus 启动参数说明

[Oracle]sqlplus 启动参数说明

2024-07-14 11:34| 来源: 网络整理| 查看: 265

[Oracle]sqlplus 启动参数说明

# su - oracle [grid]

用法 1: sqlplus -H | -V

-H[ELP]:显示 SQL*Plus 命令的语法和用法,然后返回控制到操作系统中。-V[ERSION]:显示 SQL*Plus 的版本号,然后返回控制到操作系统中。

用法 2: sqlplus [ [] [{logon | /nolog}] [] ]

is: [-C ] [-L] [-M ""] [-R ] [-S]

  -C :  设置 SQL*Plus 命令兼容版本。 的格式为“x.y[.z]”。例如, -C 10.2.0

  -L[OGON]:  指定如果首次连接不成功则不要再次提示输入用户名和口令。这个选项可用于操作系统脚本中,可防止当数据库服务器没有运行时再次提示输入连接信息。这个选项在 SQL*Plus 图形用户接口中不可用    -M[ARKUP] "":  可使用本选项从查询或脚本生成完全标准的独立的 Web 页面。  可使用 SQLPLUS -MARKUP HTML ON 或 SET MARKUP HTML ON SPOOL ON 生成标准的 Web 页。SQL*Plus 将使用 和 标签自动生成完整的 HTML 页。在执行 SPOOL OFF 命令或退出 SQL*Plus 时,假脱机文件中的 HTML 标签会被关闭。  在使用 -MARKUP 时,-SILENT 和 –RESTRICT 命令行选项也很有用。  可使用 SET MARKUP HTML ON SPOOL OFF 生成可嵌入到现有 Web 页中的 HTML 输出。通过这种方式生成的输出中没有 和 标签。  用 MARKUP HTML ON 可把 HTML 输出生成到 标签中或者 HTML 表格中。输出到表格中时将自动使用标准的HTML 、 和 标签来编码查询结果的行和列。当 HTML 选项被设为 ON时默认行为就是输出到 HTML 表中。可通过设置 PREFORMAT ON 来使用 标签生成输出。  使用 SHOW MARKUP 命令可查看 MARKUP 选项的状态。  SQLPLUS –MARKUP 命令和 SET MARKUP 命令具有相同的选项和功能。      注意:markup_option 子句可能需要用引号括起来。           HTML [ON|OFF]:  HTML 是必需有的 MARKUP 参数,它用于指定生成 HTML 类型的输出。HTML 的可选参数 ON 和 OFF 用于指定是否生成 HTML 输出。默认是OFF。  MARKUP HTML ON 使用指定的 MARKUP 选项生成 HTML 输出,或者,在使用 SET MARKUP 的情况下则用当前会话中先前的 SET MARKUP HTML 命令设置的选项。  在会话期间,可根据需要把 HTML 设为 ON 或 OFF。默认是 OFF。  可使用 SQL*Plus 命令 SPOOL filename 把生成的输出写入到假脱机文件中。详细信息请参考下面的SPOOL {ON|OFF}             HEAD text:  通过 HEAD text 选项可指定 标签中的内容。默认情况下,text是:   SQL*Plus Report  如果 text 中包括空格,则必须把它放到引号中。SQL*Plus 不会检测 text 的 HTML 有效性,因此必须确保所输入的文本对 标签是有效的。通过这个选项可为特定浏览器或者特殊需要定制输出。             BODY text:  通过 BODY text 选项可为 标签指定属性。默认情况下没有任何属性。如果text 中包括空格,则必须把它放到引号中。SQL*Plus 不会检测text 的 HTML 有效性,因此必须确保所输入的文本对 标签是有效的。通过这个选项可为特定浏览器或者特殊需要定制输出。      TABLE text:  通过 TABLE text 选项可为 标签指定属性。可使用 TABLE text 选项设置 标签的属性,例如 BORDER、CELLPADDING、CELLSPACING 和 WIDTH。默认情况下 的 WIDTH 属性设置为 90%,而 BORDER 属性设置为 1。  如果 text 中包括空格,则必须把它放到引号中。SQL*Plus 不会检测 text 的 HTML 有效性,因此必须确保所输入的文本对 标签是有效的。通过这个选项可为特定浏览器或者特殊需要定制输出。             ENTMAP {ON|OFF}:  ENTMAP ON 或 OFF 指定了 SQL*Plus 是否用 HTML 实体 ;、;、; 和 ; 来分别替换特殊字符 、" 和 &。默认情况下 ENTMAP 设为 ON。  在会话期间可根据需要把 ENTMAP 设为 ON 或 OFF。例如,设为 OFF时,SQL*Plus 屏幕输出是:   SQL>SELECT DEPARTMENT_ID, CITY   1 FROM EMP_DETAILS_VIEW   2 WHERE SALARY = 12000;  而设为 ON 时,SQL*Plus 屏幕输出是:   SQL; SELECT DEPARTMENT_ID, CITY      2 FROM EMP_DETAILS_VIEW      3 WHERE SALARY = 12000;  如果没有映射实体,Web 浏览器可能会把数据看作无效的 HTML 并且随后的输出都不能正常显示。使用 ENTMAP OFF 可以编写自己的 HTML 标签来定制输出。   和 标签中的实体不会被映射,因此必须确保在MARKUP HEAD 和 BODY 选项中使用了有效的实体。  注意:只有在 HTML 选项或 SPOOL 选项设为 ON 时 ENTMAP 才起作用

  SPOOL {ON|OFF}:  SPOOL ON 或 OFF 指定 SQL*Plus 是否把 、 和、 标签分别写入到 SPOOL filename 命令创建的每个文件的开始和结束处。默认是 OFF。  可在会话期根据需要把 SPOOL 设为 ON 或 OFF。  注意:    必须理解SET MARKUP HTML SPOOL 选项和 SQLPLUS SPOOL filename 命令的区别。    SET MARKUP HTML SPOOL ON 选项用于把 标签写入到假脱机文件中。而只有在使用了 SQLPLUS SPOOL filename 命令后才会创建假脱机文件。             当发布 SPOOL filename 命令时,SQL*Plus 会把几个 HTML 标签写入到假脱机文件中。所写入的标签和它们的默认内容是:                  SQL*Plus Report                              当发布 EXIT、SPOOL OFF 或 SPOOL filename 命令时,SQL*Plus 把下面的标签附加到文件中并关闭文件:                可使用 HEAD 和 BODY 选项指定 标签内容和 的属性。             PRE[FORMAT] {ON|OFF}:  PREFORMAT ON 或 OFF 指定 SQL*Plus 把输出写入到 标签中还是写到 HTML 表格中。默认值是 OFF,因此默认情况下输出被写入到了HTML 表格中。在会话中可根据需要把 PREFORMAT 设为 ON 或 OFF。  注意:    要使用 标签生成输出报表必须设置 PREFORMAT ON。例如:    SQLPLUS -M "HTML ON PREFORMAT ON"    SET MARKUP HTML ON PREFORMAT ON                MARKUP 用法说明:    现存的没有明确设置 PREFORMAT ON 的脚本将在 HTML 表格中生成输出。如果要在 标签中生成输出,则必须设置 PREFORMAT ON。    当在 HTML 表格中生成输出时,一些 SQL*Plus 命令会具有不同的行为。那些用于格式化报表的命令对于 Web 表格式的报表可能具有不同意义。    PAGESIZE 是 HTML 表格的行数,而不是数据行数。HTML 表格的每一行可以包含多个数据行。TTITLE、BTITLE 和列标题每 PAGESIZE 行重复一次。    如果 WRAP 设为 ON,LINESIZE 会对比较长的数据产生影响。根据数据的长度,它们可能会被显示成多行而 Web 浏览器可能会把换行符解释为一个空格。    TTITLE 和 BTITLE 可被输出到行中的三个位置:左、中和右,并且最大行宽被设置为浏览器窗口的 90%。由于这些元素在 Web 报表中被处理的方式不同,它们可能和报表中的主输出数据不能够对齐。TTITLE 和 BTITLE中的实体映射和 MARKUP 命令中指定的 ENTMAP 设置相同。    如果在输出中使用标题,SQL*Plus 将在标题后使用一个新的 HTML 表格显示数据。根据每列中数据宽度的不同,在浏览器中显示的每张表格的列宽可能也不同。    在 HTML 报表中只有当 PREFORMAT 设置为 ON 时,SET COLSEP 和 RECSEP才生成输出。                  -R[ESTRICT] :  允许用户禁用几个可以和操作系统交互的命令。这与使用 Product User Profile(PUP)表来禁用命令相类似。然而,若使用本选项禁用命令,则即使没有连接到服务器这些命令也会被禁用并且一直保持到退出 SQL*Plus。  如果没有使用 –R 选项,那么所有的命令都可使用,除非已在 PUP 表中被禁用。  最高限制级别为 -R 3,如果使用了 -R 3,那么 LOGIN.SQL 不会被读取,而GLOGIN.SQL 会被读取但是其中使用的被限制的命令将失败。  各限制级别禁用的命令如下:    命令    Level 1  Level 2  Level 3    EDIT    disabled disabled disabled    GET               disabled    HOST    disabled disabled disabled    SAVE         disabled disabled    SPOOL         disabled disabled    START,@,@@            disabled    STORE         disabled disabled

  -S[ILENT]:  设置静默方式,禁止显示所有的 SQL*Plus 信息和提示消息,包括命令提示符、命令的回显和正常启动 SQL*Plus 时显示的欢迎信息。如果省略了用户名或密码 SQL*Plus 会提示输入它们,但提示信息是不可见的。可在其它的程序中用静默方式来调用 SQL*Plus。  在 CGI 脚本或操作系统脚本中用 SQLPLUS –M 命令创建 Web 格式的报表时静默选项是一个很有用的模式。在使用静默选项时 SQL*Plus 的欢迎和提示信息都不会在报表中出现。

is: {[/][@] | / }       [AS {SYSDBA | SYSOPER | SYSASM}] [EDITION=value]

  指定数据库帐户用户名, 口令和连接标识符。如果没有连接标识符, SQL*Plus 将连接到默认数据库    / 表示使用操作系统验证时的默认登录。使用默认登录时不能输入 ,SQL*Plus 会尝试使用用户名 OPS$name进行登录,其中name 是操作系统用户名。注意,前缀“OPS$”可以被设置为任何其它的字符串。例如,可以在 INIT.ORA 参数文件中把它改为LOGONname 或 USERIDname。

  子句 AS SYSDBA, AS SYSOPER 和 AS SYSASM 选项指定以数据库管理员特权进行连接。也可使用 / 和 /NOLOG 来进行特权连接。如果使用这个选项,在大多数操作系统中必须把命令参数放在引号中,例如:   sqlplus "/ as sysdba"   sqlplus "system/password as sysoper"

   Oracle 连接标识符。其确切的语法依赖于 Oracle 安装时所使用的网络通讯协议。可以是 Oracle 网络服务名或者简单连接方式。

   @[ | [//]Host[:Port]/]     Oracle 网络服务名,如果不输入,默认为环境变量 $ORACLE_SID 的值        Host 目标数据库主机名或者IP地址    Port 目标数据库监听端口,如果不输入,默认为1521     目标数据库服务名

  /NOLOG 选项仅启动 SQL*Plus 不连接到数据库。要执行任何 SQL 命令,必须首先执行 CONNECT 命令建立一个有效连接。当希望用 SQL*Plus 脚本来提示输入用户名、密码或数据库时,可使用 /NOLOG。这时脚本文件中的第一行不会被假定为包含一个登录信息。

  EDITION 指定会话版本的值。

   is: @|[.] [ ...]  指定要执行的脚本文件的名称和参数。可调用位于本地文件系统或 Web 服务器中的脚本。  SQL*Plus 把参数传递给脚本,就像使用 SQL*Plus 的 START 命令执行文件一样。如果没有指定文件扩展名,将使用 SET SUFFIX 命令定义的后缀。默认值是 .sql

注意:  当 SQL*Plus 启动并连接数据库后,一些本地 SQL 文件可能会被执行例如“$ORACLE_HOME/sqlplus/admin/glogin.sql”文件和用户工作目录中的“login.sql”文件 。

 

范例:

仅启动 SQL*Plus 不登录到数据库$ sqlplus /nolog

以默认管理员登陆$ sqlplus / as sysdba

以数据库账户登录$ sqlplus$ sqlplus username$ sqlplus username@sid$ sqlplus username@//host/sid$ sqlplus username@//host:port/sid$ sqlplus username/password$ sqlplus username/password@sid$ sqlplus username/password@//host/sid$ sqlplus username/password@//host:port/sid$ sqlplus username as sysdba$ sqlplus username@sid as sysdba$ sqlplus username@//host/sid as sysdba$ sqlplus username@//host:port/sid as sysdba$ sqlplus username/password as sysdba$ sqlplus username/password@sid as sysdba$ sqlplus username/password@//host/sid as sysdba$ sqlplus username/password@//host:port/sid as sysdba

登录数据库并执行 SQL*Plus 脚本文件$ sqlplus username/password@sid @/home/oracle/createdb$ sqlplus username/password@sid @/home/oracle/createdb.sql$ sqlplus username/password@sid @/home/oracle/createdb.sql 10 10 30 40

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有